// //检测注册表单
{
    // function checkRegisterForm() {
    //     console.log('1111');
    //     // 获取注册页面的表单
    //     var form = document.querySelector('.register-box .form-register')
    //     // 判断表单是否存在 不存在就直接return中断返回

    //     if (!form) return;

    //     // 获取表单的 用户名框  和 提示信息框
    //     var input = form.querySelector('.username-inp');
    //     var info = form.querySelector('.info')
    //     // console.log(input, info);
    //     // 定义一个变量记录表单是否通过验证
    //     var isValid = false;

    //     // 监测 表单的 提交时间  
    //     form.addEventListener('submit', function (e) {
    //         e.preventDefault();
    //         if (isValid) form.submit()
    //     })
    //     // 监测input 的 input事件 input事件 只要用户输入就会触发
    //     input.addEventListener('input', function (e) {
    //         console.log('input 事件被触发');
    //         // 监测用户名是否为空
    //         var value = e.target.value.trim()
    //         // console.log(e.target.value);
    //         if (!value) {
    //             isValid = false;
    //             info.innerHTML = "用户名不能为空";
    //             info.classList.add('text-error')
    //             info.classList.remove('text-success')
    //             input.classList.add('input-error');
    //             input.classList.remove('input-success');
    //             return;
    //         }
    //         info.innerHTML = " ";
    //         // 进行ajax 请求 
    //         ajax({
    //             url: '/api/check-username',
    //             data: {
    //                 username: value,
    //             },
    //             // 在success回调函数中拿到相应的结果
    //             success: function (data) {
    //                 // console.log(data);
    //                 if (data.status === "fail") {
    //                     isValid = false
    //                     info.innerHTML = data.message;
    //                     info.classList.add('text-error')
    //                     info.classList.remove('text-success')
    //                     input.classList.add('input-success')
    //                 } else if (data.status === "success") {
    //                     isValid = true;
    //                     info.innerHTML = data.message;
    //                     info.classList.add('text-success')
    //                     info.classList.remove('text-error')
    //                     input.classList.add('input-success')
    //                     input.classList.remove('input-error')
    //                 }


    //             }


    //         })

    //     })




    // }
    // checkRegisterForm();
}

// 防抖和节流
// 防抖：（先等待 后调用 一段时间没有事件触发了 才调用）
// 节流：先调用  后等待  按照指定的频率响应事件
{
    // 防抖函数
    function debounce(callback, delay) {
        var timer = null;
        delay = delay || 300
        return function () {
            var that = this
            var arg = arguments;
            clearTimeout(timer)
            timer = setTimeout(() => {
                callback && callback.apply(that, arg)
            }, delay);
        }
    }
    // 节流函数
    function throttle(callback, delay) {
        var timer = null;
        delay = delay || 1000
        return function () {
            var arg = arguments;
            if (timer) return;
            callback && callback.apply(this, arg)
            timer = setTimeout(() => {
                timer = null
            }, delay);
        }
    }


    //检测注册表单
    function checkRegisterForm() {
        console.log('1111');
        // 获取注册页面的表单
        var form = document.querySelector('.register-box .form-register')
        // 判断表单是否存在 不存在就直接return中断返回

        if (!form) return;

        // 获取表单的 用户名框  和 提示信息框
        var input = form.querySelector('.username-inp');
        var info = form.querySelector('.info')
        // console.log(input, info);
        // 定义一个变量记录表单是否通过验证
        var isValid = false;

        // 监测 表单的 提交时间  
        form.addEventListener('submit', function (e) {
            e.preventDefault();
            if (isValid) form.submit()
        })
        // 监测input 的 input事件 input事件 只要用户输入就会触发
        input.addEventListener('input', throttle(function (e) {
            console.log('input 事件被触发');
            // 监测用户名是否为空
            var value = e.target.value.trim()
            // console.log(e.target.value);
            if (!value) {
                isValid = false;
                info.innerHTML = "用户名不能为空";
                info.classList.add('text-error')
                info.classList.remove('text-success')
                input.classList.add('input-error');
                input.classList.remove('input-success');
                return;
            }
            info.innerHTML = " ";
            // 进行ajax 请求 
            ajax({
                url: '/api/check-username',
                data: {
                    username: value,
                },
                // 在success回调函数中拿到相应的结果
                success: function (data) {
                    // console.log(data);
                    if (data.status === "fail") {
                        isValid = false
                        info.innerHTML = data.message;
                        info.classList.add('text-error')
                        info.classList.remove('text-success')
                        input.classList.add('input-success')
                    } else if (data.status === "success") {
                        isValid = true;
                        info.innerHTML = data.message;
                        info.classList.add('text-success')
                        info.classList.remove('text-error')
                        input.classList.add('input-success')
                        input.classList.remove('input-error')
                    }


                }


            })

        }))
    }
    checkRegisterForm();
}





